package org.seed.quantum.message.plugins;

import org.seed.quantum.socket.AbstractSocketSession;
import org.seed.quantum.socket.SocketStateEnum;
import java.nio.channels.AsynchronousSocketChannel;


public class AbstractPlugin<T> implements Plugin<T>{

    @Override
    public boolean preProcess(AbstractSocketSession session, T t) {
        return true;
    }

    @Override
    public void stateEvent(SocketStateEnum socketStateEnum, AbstractSocketSession session, Throwable throwable) {

    }

    @Override
    public AsynchronousSocketChannel shouldAccept(AsynchronousSocketChannel channel) {
        return channel;
    }

    @Override
    public void afterRead(AbstractSocketSession session, int readSize) {

    }

    @Override
    public void afterWrite(AbstractSocketSession session, int writeSize) {

    }

    @Override
    public void beforeRead(AbstractSocketSession session) {

    }

    @Override
    public void beforeWrite(AbstractSocketSession session) {

    }
}
